public class BitOperator {
        //位运算
        public static void main(String[] args){
            //推导
            //1.先得到2的补码 => 2的源码 00000000 00000000 00000000 00000010
            //               => 2的补码 00000000 00000000 00000000 00000010
            //2.先得到3的源码 => 3的源码 00000000 00000000 00000000 00000011
            //               => 3的补码 00000000 00000000 00000000 00000011
            //3.按位&
            // 00000000 00000000 00000000 00000010
            // 00000000 00000000 00000000 00000011
            // 00000000 00000000 00000000 00000010  &运算后的补码
            // 运算后的源码也是他，因为整数三码合一
            // 结果就是2
            System.out.println(2&3);    //2

            //推导
            //1.先得到 => -2的源码 10000000 00000000 00000000 00000010
            //        => -2的反码  11111111 11111111 11111111 11111101
            //        => -2的补码  11111111 11111111 11111111 11111101
            //2. ~-2操作           00000000 00000000 00000000 00000010 运算后的补码
            //3. 运算后的原码就是  00000000 00000000 00000000 00000010 =>1
            System.out.println(~-2);    //1
        }
}
